﻿/// <reference path="jquery-1.6.4-vsdoc.js" />
/// <reference path="jquery-ui-1.8.16.js" />

$(document).ready(function () {
    //    alert("http://vs12prec01:9999/Task/EditContractTransfer.aspx?ContractTransferID=20100".split(/[=]/)[1]);
    $("#keycode").keydown(function (e) {
        alert(e.keyCode);
    });

    $("#ProgressBar").progressbar({ value: 20, max: 100 });
    //    setInterval(progressBarMove, 300);
    $("#ProgressBar").progressbar({ change: function (event, ui) {

        var eve = event;
        var u = ui;
        ui.value = 0;

    }
    });
    $("#click").click(function () {
        progressBarMove();
    });


    //选定他的兄弟姐妹 但不包含本身 
    $("#Button1").click(function () {
        $(this).siblings().val("Hello Sibling");

    });


    $("#dialog").dialog({
        autoOpen: false,
        width: 600,
        buttons:
    {
        "OK": function (o1, o2, o3) {
            //值得注意的是 这里传进来的this 不是Jquery 对象,是一个javacript element 对象，如果想实现Jquery的属性，需要用$();
            $(this).dialog('close');
        },
        "Cancel": function () {
            $(this).dialog('close');
        }
    }


    });


    $("#DatePicker").datepicker();
    $("#DatePicker").datepicker("destroy");


    //Remove *
    //    $("span", $('div[id$="Header"]')).filter(function () {
    //        var content = $(this).html();
    //        return content.indexOf("*") != -1;
    //    }).remove();

    //    var w = window.screen.width - 50;
    //    var h = window.screen.height - 100;
    //    window.moveTo(25, 25);
    //    window.resizeTo(w, h);
    //    $(document).ready(function () {
    //        $('div[id$="Footer"]').css("pageBreakAfter", "always");

    //        //处理disable的对象的显示，去除其灰色不清晰。
    //        $('input[id$="tbToBeDeliveredDate"]').datepicker({ disabled: true });
    //        $("input:disabled").removeAttr("disabled");
    //        $("select:disabled").removeAttr("disabled");
    //        $("select").each(function () {
    //            var object = $('<input type="text" />');
    //            object.val($(this).val());
    //            object.addClass("text");
    //            $(this).replaceWith(object);
    //        });
    //        $("input").attr("readOnly", "true");
    //        $(".image").remove();

    //        //$('input[id$="tbToBeDeliveredDate"]').datepicker("destroy");
    //        $('input[id$="tbToBeDeliveredDate"]').val("dfsafsf");

    //        window.print();
    //    });

    //    //Remove *
    //    $("span").filter(function () {
    //        var content = $(this).html();
    //        return content.indexOf("*") != -1;
    //    }).remove();

    //    处理disable的对象的显示，去除其灰色不清晰。
    //    $("input:disabled").removeAttr("disabled");
    //    $("select:disabled").removeAttr("disabled");
    //    $("select").each(function () {
    //        var object = $('<input type="text" />');
    //        object.val($(this).val());
    //        object.addClass("text");
    //        $(this).replaceWith(object);
    //    });
    //    $("input").attr("readOnly", "true");

    $("#dragable").draggable();
    //    alert(!undefined);

    //    var time = { hellos: 1} || {};
    //    var time2 = time;


    //    try {
    //        var bFalse = false;
    //        var bResult = (bFalse || bUnknown); //发生错误
    //        alert(bResult);
    //    }
    //    catch (err) {
    //        alert(err.name+err.description+err.message+err.number) ;
    //    }

    //    });

    var divObject = $('div');
    var div1 = divObject[0];  //经过数组处理  已不再是Jquery 对象  
    var div2 = divObject.filter(function (index) {
        return index == 1;
    });
    var div3 = $('div')[1];
    var div = divObject;


    document.onclick = function (ob, ob2, boe, dd) {
        var temp = 1;
    };

    $("#OpenDialog").click(function () {

        var object = $("#dialog").dialog('open');
        //alert(object.toString());
    }
    );

    var object = $("#Text2");
    object.attr("readOnly", true);
    $("#NoChange").click(function () {
        var object = $("#Text2");
        //object.attr("readOnly", true);
        object.val("Change");
        object.data("People", { name: "William", age: 13 });
        object.attr("defalutvalue", "Change1");
        //alert(object[0].getAttribute("value"));
        alert(object.val());
    }
    );

});



//Closures

function create() {
    var count = 3;
    return function () {
        count++;
        alert(count);

    };
}


function create1() {
    var count = 10;
    return { //这个大括号必须紧跟着 return   也就是  return 和{ 必须在一行。
        add: function () {
            count++;
            alert(count);
        },
        surplus: function () {
            count--;
            alert(count);
        }
    };
}


//function create2() {
//    var counter = 0;
//    return {
//        increment: function () {
//            counter++;
//        },
//        print: function () {
//            console.log(counter);
//        }
//    }
//}
//var c = create2();
//c.increment();
//c.print(); // 1

function progressBarMove() {
    var value = $("#ProgressBar").progressbar("value");
    value++;
    $("#ProgressBar").progressbar("value", value);


    var cre = create();
    cre();  //如果为连续调用 则闭包不会被释放 所以 count的值是逐步加1的
    cre();
    var cre1 = create1();
    cre1.add();
    cre1.add();

}


(function () {
    var myjQuery = jQuery.sub();

    myjQuery.fn.remove = function () {
        // New functionality: Trigger a remove event
        this.trigger("remove");

        // Be sure to call the original jQuery remove method
        return jQuery.fn.remove.apply(this, arguments);
    };

    myjQuery(function ($) {
        $(".menu").click(function () {
            $(this).find(".submenu").remove();
        });

        // A new remove event is now triggered from this copy of jQuery
        $(document).bind("remove", function (e) {
            $(e.target).parent().hide();
        });
    });
})();
